1. Field of the Invention
The present invention relates generally to the field of computer software and, more particularly, to a method of software protection involving digital watermarking of output images from a computer program.
2. Description of the Related Art
To promote their computer programs (also called “software”), some companies (e.g., software venders) distribute for free, and permit users to use, demonstration or trial versions of their software. A software vender can benefit in many ways by allowing certain users to have free access to their software. For example, increased access to its software can build market share. The more that people are familiar with the operation and use of the software, the more that people will develop a preference for the software. By enabling users to advance skills, a long lasting and more fluid connection to the market can be established. Further, the career growth and professional advancement of the user can be affected by the pervasiveness of software, further increasing demand. Thus, it can be to a software vender's advantage to provide free access to its software.
A delicate balance must be struck, however, between the company's objective of increasing popularity of the software to achieve market pervasiveness and the company's objective of maximizing profit from sales of the software. For example, if the company focuses too much on achieving market pervasiveness by allowing users unlimited use and functionality of their commercial software, the company can risk sacrificing its profit-making objective.
In attempts to balance these marketing goals with the need to make sales of the software, the free or demonstration (demo) versions of the software typically have limited functionality and/or limited demo use time. For example, some companies allow users to use software on a “trial-run” basis to provide the users with an opportunity to discover whether they perceive enough value in the software to purchase a fully functioning commercial version. A problem with this approach is that the “trial-run” period is often not long enough to actually provide users with enough time to determine whether they actually like the software.
An example of functionality limits that may be placed on the software include preventing users from saving/copying output from the software, and/or preventing printing output produced by the software. This reduces the commercial usefulness of the software and encourages users to purchase a commercial version. However, by preventing the users from saving/copying output from the software, and/or preventing the users from printing output produced by the software, users are not able to experience the full functionality of the software. This reduces the demo version's marketing effectiveness.
There is further a need in the industry to provide demo versions of software that can be used by students to learn how to use the software. Educating students in the use of a particular software package benefits the student by making him or her more marketable in the industry, benefits industry by providing access to more trained workers, and benefits the software vender because more trained users of their software creates more of market demand for the software. However, conventional demo versions of software are not suitable for training students. A limited functionality demo program does not typically permit a student to become proficient in use of the program. Further, a 30 or 60 day time limit does not typically provide sufficient time to learn a complex computer program.
In seeking a solution to these problems, some software venders have removed the time limits and functionality limits on the demo software. Instead, they have implemented a system where the software may be used a limited number of times before the software requires that a code be entered to unlock it for unlimited use. The code is provided by the software vender upon purchase of a usage license. This solution, however, does not help the student who needs unlimited access to the software. This solution also does not prevent a user from simply reinstalling the software to reset the usage count.
Thus, there are limited options available to a software vender who wishes to provide free copies of software to students and educational institutions. If full functionality copies of the software are given to students at no charge, there is a risk that the copies will be put to commercial use. If enough functionality is removed from the software to protect against unlicensed commercial use, then the training effectiveness of the software is similarly reduced.
These problems are particularly felt by companies that sell high-end drawing, drafting, animation, modeling, and Computer-Aided Industrial Design (CAID) programs. Such programs can be expensive such that students cannot typically afford to purchase their own copy. Such programs are also complex to use, requiring many hours of hands-on training to master use.
Therefore, there is a strong need in the industry for a way to protect against unlicensed commercial usage of computer software while still permitting full functioning or nearly full functioning versions of the software to be distributed for educational and demonstration purposes.